User interactive programs are particularly useful for data analysis applications such as the analysis of semiconductor manufacturing yields. In such applications, a user (i.e., the individual running the program) may desire to conduct additional data processing activity based upon results to that point. Ideally, the program would be interactive so that the user could specify such additional data processing activity at various preselected points during execution of the program.
A graphical user interface (GUI) employing workflow methodology whereby objects are placed and coupled together in a workspace on the computer display screen to develop application programs is a useful type of software development tool. One advantage of such a GUI is that the developer (i.e., the individual developing the program) does not need to have any particular programming language expertise. Another advantage is that the objects made available to the developer are all fully tested, including the interfaces that allow them to couple to other objects.
Conventional GUIs employing workflow methodology, however, are not generally configured to develop user interactive programs. The programs generated by these software development tools process data in a fixed manner that cannot be easily altered by the user. In order to change the processing or presentation of data in these programs, the program itself must be rewritten or modified. Thus, the analysis of data using such programs tends to be slower and results of such analysis inferior than if the programs were user interactive.